var express=require('express')
var fs=require("fs")
var path=require('path')
var jwt=require('jsonwebtoken')

var userRouter=express.Router()

//分页
//分页(查询)
userRouter.get( '/list', (req,res)=>{
    var {page,count} = req.query;
    var filepath = path.join( __dirname, '../json/user.json' );
    var arr = fs.readFileSync(filepath);
    arr = arr.toString()?JSON.parse( arr ): []
    var newarr = arr.slice( (page-1)*count, page*count );
    res.send( { code:200, msg:'请求成功!',list: newarr } );
} )
//模糊搜索
userRouter.get('/search',(req,res)=>{
   var {searchkey,page,count}=req.query
   var filepath=path.join(__dirname,"../json/user.json")
   var arr=fs.readFileSync(filepath)
   arr=arr.toString()?JSON.parse(arr):[]
   var newarr=arr.filter((item)=>{
    return new RegExp(searchkey).test(item.name)
   })
   if(searchkey==""){
    var newarr=arr.slice((page-1)*count,page*count,page*count)
   }
   res.send({code:200,msg:"查询成功",list:newarr})
})

// 登录
userRouter.post( '/login', (req,res)=>{
    var {phone,pass} = req.body;
    var filepath = path.join( __dirname, '../json/users.json' );
    var arr = fs.readFileSync(filepath);
    arr = arr.toString()?JSON.parse( arr ): []
    var i = arr.findIndex((item,index)=>{
        return item.phone == phone && item.pass == pass;
    })
    if( i != -1 ){
        var token = jwt.sign( { phone }, "1234", { algorithm: 'HS256',expiresIn: 60*100 } )
        res.send( {code:200, msg:'登陆成功!',userinfo: arr[i], token } );
    }else{
        res.send( {code:400, msg:'登陆失败!'} );
    }
} )

//新增
userRouter.post('/tianjia', (req,res)=>{
    var {  mingcheng } = req.body;
    var filepath = path.join( __dirname, '../json/user.json' );
    var arr = fs.readFileSync(filepath);
    arr = arr.toString()?JSON.parse( arr ): []
    var i = arr.findIndex((item)=>{
        return item.mingcheng == mingcheng;
    });
    if( i != -1 ){ 
        res.send({ code:400,msg:'该职位已经有了' })
    }else{
        arr.push( {...req.body,shijian:"2022/11/25/16:22"} )
        fs.writeFileSync(filepath, JSON.stringify( arr ), 'utf8' );
        res.send({ code:200,msg:'注册成功!' })
    }
})
// 注册
userRouter.post( '/register', (req,res)=>{
    var { phone } = req.body;
    var filepath = path.join( __dirname, '../json/users.json' );
    var arr = fs.readFileSync(filepath);
    arr = arr.toString()?JSON.parse( arr ): []
    var i = arr.findIndex((item)=>{
        return item.phone == phone;
    });
    if( i != -1 ){ 
        res.send({ code:400,msg:'该手机号已注册,注册失败!' })
    }else{
        arr.push( {...req.body} )
        fs.writeFileSync(filepath, JSON.stringify( arr ), 'utf8' );
        res.send({ code:200,msg:'注册成功!' })
    }
})
//删除
userRouter.post('/delete',(req,res)=>{
    var {name}=req.body
    var filepath=path.join(__dirname,"../json/user.json")
    var arr=fs.readFileSync(filepath)
    arr=arr.toString()?JSON.parse(arr):[]
    var i=arr.findIndex((item)=>{
        return item.name==name
    })
    if(i!=-1){
        arr.splice(i,1)
        fs.writeFileSync(filepath,JSON.stringify(arr))
         var newarr=arr.slice(0,2)
         res.send({code:200,msg:"删除成功",list:newarr})
     }else{
        res.send({code:400,msg:'删除失败！'})
     }
 
})

module.exports=userRouter